package springboot_demo.itheima.mapper;

import org.apache.ibatis.annotations.*;
import springboot_demo.itheima.pojo.Article;

import java.util.List;

/**
 * 功能：
 * 作者：Java课程项目组
 * 日期：2025年01月26日
 */
@Mapper
public interface ArticleMapper {

    //新增文章
    @Insert("insert into article(title,content,cover_img,state,category_id,create_user,create_time,update_time) " +
        "values (#{title},#{content},#{coverImg},#{state},#{categoryId},#{createUser},#{createTime},#{updateTime})"
    )
    void add(Article article);

    //条件分页列表查询
    //用映射配置文件去写动态sql
    List<Article> list(Integer userId, Integer categoryId, String state);

    //获取文章详情
    @Select("select * from article where id=#{id}")
    Article findById(Integer id);

    //更新文章分类
    @Update("update article set title=#{title},content=#{content},cover_img=#{coverImg},state=#{state} where id=#{id}")
    void update(Article article);

    //删除文章
    @Delete("delete from article where id=#{id}")
    void delete(Integer id);
}
